package com.adaxi.adc.business.vehicletrip.service;

import com.adaxi.adc.business.vehicletrip.pojo.VehicleTrip;
import com.adaxi.adc.business.vehicletrip.vo.MyTripVo;
import com.adaxi.adc.business.vehicletrip.vo.VehicleTripVo;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * @author 钟红树
 */
public interface VehicleTripService extends IService<VehicleTrip> {
    void insert(VehicleTripVo vo);


    List<MyTripVo> getMyTrip(Long id);


    void updateStatusById(String id, String status);


    /**
     * 增加车辆行程的乘客数。
     * @param id       行程的ID。
     * @param numToAdd 需要增加的乘客数量。
     */
    void increasePassengers(String id, int numToAdd);

    /**
     * 根据行程ID，获得车辆-司机信息的ID
     * @param tripId 车辆行程ID
     * @return 车辆-司机信息ID
     */
    Long getVehicleIdByTripId(String tripId);

    /**
     * 司机端通过id取消行程
     * @param id
     */
    void cancelTrip(String id);
}
